1. Technical Field
The present invention is generally directed to computer application communication, and more specifically to the field of computer application and network information updating.
2. Description of the Related Art
In a component-based software system it is often needed to reflect changes in several views simultaneously. If a user changes data and that data appears in several views on the desktop, there is an expectation that the change is universally reflected without user action. There are also many cases where several running instances of a component or application need to communicate dynamically to reflect a change. Changing an option for example in one copy of an application may need to be reflected in other currently executing copies. Typically the last copy closed dictates what value of the option is saved. Such an approach lacks an efficient and effective dynamic communication between applications and components.
A software design paradigm exists that is often known as the publish-subscribe design pattern. Early forms were implemented as electronic mail distribution mechanisms such as the popular Listserve system that uses a central server process to manage subscriptions. A email message sent to the list is then forwarded to all subscribers. Microsoft's MSMQ and IBM's MQ series are examples of modern message queue systems that extend message delivery for more generalized distributed applications. These systems require a server process, administration overhead, subsystem component installation, and are generally unsuitable for object level communication. A much more simplified, low overhead mechanism is needed to address the needs and problems present in these and other systems.